<?php
require_once('Parametros/Ubicacion/consultas_ubicacion.php');
class ci_provincia extends megasubasta_ci
{
	protected $filtro;
	protected $s__datos_filtro;
	protected $s__where;
	protected $s__seleccion_provincia;
	//-----------------------------------------------------------------------------------
	//---- Configuraciones --------------------------------------------------------------
	//-----------------------------------------------------------------------------------
	function conf()
	{
		$this->cn()->cargar();
	}

	//-----------------------------------------------------------------------------------
	//---- Eventos ----------------------------------------------------------------------
	//-----------------------------------------------------------------------------------
	function evt__Nuevo()
	{
		unset($this->s__seleccion_provincia);
		$this-> set_pantalla('pant_am_provincia');
	}

	//-----------------------------------------------------------------------------------
	//---- cuadro_provincia -------------------------------------------------------------
	//-----------------------------------------------------------------------------------
	function conf__cuadro_provincia(megasubasta_ei_cuadro $cuadro)
	{
		if(isset($this->s__datos_filtro)){
			$datos = consultas_ubicacion::listado_provincias($this->s__where);
			//ei_arbol($this->s__datos_filtro);
			}else{
				$datos = consultas_ubicacion::listado_provincias();
				}
			$cuadro->set_datos($datos);
			//ei_arbol($datos);			
	}

	function evt__cuadro_provincia__seleccion($seleccion)
	{
		$this->s__seleccion_provincia=$seleccion;
		$this->dependencia('formulario_provincia')->set_solo_lectura('id_pais');
		$this->set_pantalla('pant_am_provincia');
	}

	function evt__cuadro_provincia__eliminar($seleccion)
	{
		$this->cn()->eliminar_provincia($seleccion);
		$this->cn()->guardar();
	}

	//-----------------------------------------------------------------------------------
	//---- filtro_provincia -------------------------------------------------------------
	//-----------------------------------------------------------------------------------
	function conf__filtro_provincia(megasubasta_ei_filtro $filtro)
	{
		if (isset($this->s__datos_filtro)){  //al filtro este le paso los datos de la variable datos_filtro usada en el filtro
			$filtro->set_datos($this->s__datos_filtro); 
			$this->s__where = $filtro->get_sql_where();
			
		}
	}

	function evt__filtro_provincia__filtrar($datos)
	{
		$this->s__datos_filtro = $datos;
	}

	function evt__filtro_provincia__cancelar()
	{
		unset($this->s__datos_filtro);
	}

	//-----------------------------------------------------------------------------------
	//---- formulario_provincia ---------------------------------------------------------
	//-----------------------------------------------------------------------------------
	function conf__formulario_provincia(megasubasta_ei_formulario $form)
	{
		if(isset($this->s__seleccion_provincia)){
			return $this->cn()->obtener_provincia($this->s__seleccion_provincia);
			}
	}

	function evt__formulario_provincia__alta($datos)
	{
		$this->cn()->agregar_provincia($datos);
		try{
			$this->cn()->guardar();
			$this-> set_pantalla('pant_ini_provincia');
		}catch (toba_error_db $error){
			$sql_state = $error->get_sqlstate();
			if($sql_state == 'db_23505'){
				toba::notificacion()->agregar("La Provincia ya existe", 'info');
				$this->cn()->resetear();
			}else{
				throw $error;
				}
		}
	}

	function evt__formulario_provincia__modificacion($datos)
	{
		if(isset ($this->s__seleccion_provincia)){
			$this->cn()->modificar_provincia($this->s__seleccion_provincia,$datos);
		try{
			$this->cn()->guardar();
			unset($this->s__seleccion_provincia);
			$this->set_pantalla('pant_ini_provincia');
		}catch (toba_error_db $error){
			$sql_state = $error->get_sqlstate();
			if($sql_state == 'db_23505'){
				toba::notificacion()->agregar("La Provincia ya existe", 'info');
				$this->cn()->resetear();
			}else{
				throw $error;
				}
			}
		}
	}

	function evt__formulario_provincia__cancelar()
	{
		unset($this->s__seleccion_provincia);
		$this->set_pantalla('pant_ini_provincia');
	}

}

?>
